#pragma once

#define _CRT_SECURE_NO_WARNINGS

#include "targetver.h"

#include <stdio.h>
#include <tchar.h>

#define _USE_MATH_DEFINES
#include <math.h>

#include <vector>
#include <list>
#include <map>
#include <fstream>
#include <sstream>

using namespace std;

#ifndef tstring
#ifdef _UNICODE
#define tstring wstring
#define tostringstream wostringstream
#else
#define tstring string
#define tostringstream ostringstream
#endif
#endif

#ifndef DWORD
typedef unsigned long DWORD;
#endif

#ifndef LPCTSTR
typedef const TCHAR *	LPCTSTR;
typedef const char *	LPCSTR;
#endif


#include "zeroinit.h"
#include "arraysizehelper.h"
